/* --------------------------------------------------- ABM ASISTENCIAS ----------------------------------------------------------------*/
$(document).ready(function(){
	var oTable1 = $('#sample-table-2').dataTable({
		//Permite o no guardar el numero de pagina que estaba seleccionada mediante una cookie y al recargar no se pierde la seleccion
		"bStateSave":true,
		//Permite poner los elementos del combo para cambiar la cantidad de filas a visualizar
		"aLengthMenu": [[30, 10, 25, -1], [30, 10, 25, "Todos"]],
		//Cantidad de filas de la tabla por pagina
		"iDisplayLength":30,
		//Ordena las filas por el valor de la columna n de forma ascendente o descendente. La columna inicial es la 0
		"aaSorting": [[ 1, "desc" ]],
		//Para que los mensajes se muestren en español
		"oLanguage": {
			"sProcessing":   "Procesando...",
			"sLengthMenu":   "Mostrar _MENU_ registros",
			"sZeroRecords":  "No se encontraron resultados",
			"sInfo":         "Mostrando desde _START_ hasta _END_ de _TOTAL_ registros",
			"sInfoEmpty":    "Mostrando desde 0 hasta 0 de 0 registros",
			"sInfoFiltered": "(filtrado de _MAX_ registros en total)",
			"sInfoPostFix":  "",
			"sSearch":       "Buscar:",
			"sUrl":          "",
			"oPaginate": {
				"sFirst":    "Primero",
				"sPrevious": "Anterior",
				"sNext":     "Siguiente",
				"sLast":     "&Uacute;ltimo"
			}
		},
		
		"aoColumns": [
		  { "bSortable": false }, { "bSortable": true }, { "bSortable": true }, { "bSortable": true },  { "bSortable": true }
		]
	});
	
	//Tabla en mi asistencia
	var oTable2 = $('#sample-table-3').dataTable({
		//Permite o no guardar el numero de pagina que estaba seleccionada mediante una cookie y al recargar no se pierde la seleccion
		"bStateSave":true,
		//Permite poner los elementos del combo para cambiar la cantidad de filas a visualizar
		"aLengthMenu": [[30, 10, 25, -1], [30, 10, 25, "Todos"]],
		//Cantidad de filas de la tabla por pagina
		"iDisplayLength":30,
		//Ordena las filas por el valor de la columna n de forma ascendente o descendente. La columna inicial es la 0
		"aaSorting": [[ 0, "desc" ]],
		//Para que los mensajes se muestren en español
		"oLanguage": {
			"sProcessing":   "Procesando...",
			"sLengthMenu":   "Mostrar _MENU_ registros",
			"sZeroRecords":  "No se encontraron resultados",
			"sInfo":         "Mostrando desde _START_ hasta _END_ de _TOTAL_ registros",
			"sInfoEmpty":    "Mostrando desde 0 hasta 0 de 0 registros",
			"sInfoFiltered": "(filtrado de _MAX_ registros en total)",
			"sInfoPostFix":  "",
			"sSearch":       "Buscar:",
			"sUrl":          "",
			"oPaginate": {
				"sFirst":    "Primero",
				"sPrevious": "Anterior",
				"sNext":     "Siguiente",
				"sLast":     "&Uacute;ltimo"
			}
		},
		
		"aoColumns": [
		  { "bSortable": true }, { "bSortable": true }, { "bSortable": true }, { "bSortable": true }
		]
	});
});

//*Este metodo se llama cuando en el metodo consultar registros se cambia la seleccion en el filtro*/
function filtrarAsistencias(tipo, url){
	var cicloLectivo = document.getElementById("cicloLectivo");
	var turno = document.getElementById("turno");
	var curso = document.getElementById("curso");
	var division = document.getElementById("division");
	
	if(tipo == 1 || tipo == 2){
		curso.value = 0;
		division.value = 0;
	}
	
	if(tipo == 3){
		division.value = 0;
	}
	
	window.location = url + "/" + cicloLectivo.value + "/" + turno.value + "/" + curso.value + "/" + division.value + ".html";
}

//*Este metodo se llama cuando en el metodo consultar registros se cambia la seleccion en el filtro*/
function filtrarInforme(tipo, url){
	var cicloLectivo = document.getElementById("cicloLectivo");
	var curso = document.getElementById("curso");
	var division = document.getElementById("division");
	var alumno = document.getElementById("alumno");
	
	if(tipo == 1){
		curso.value = 0;
		division.value = 0;
		alumno.value = 0;
	}
	
	if(tipo == 2){
		division.value = 0;
		alumno.value = 0;
	}
	
	if(tipo == 3){
		alumno.value = 0;
	}
	
	window.location = url + "/" + cicloLectivo.value + "/" + curso.value + "/" + division.value + "/" + alumno.value + ".html";
}

/*Este metodo se llama cuando en el metodo consultar asistencia se aprieta el boton eliminar de cada registro*/
function eliminarAsistencia(url, fecha){
	var resp = confirm("Realmente desea eliminar a la toma de asistenca de la fecha: '"+fecha+"'?");
	if(resp == true){
		$("#cuerpo").load(url, function(){});
	}
}

//Este metodo se llama cuando se tiene que modificar una asistencia
function modificarAsistencia(){
	var division = document.getElementById("division");
	var fecha = document.getElementById("fecha");
	var tipoAsistencia = document.getElementById("tipoAsistencia");
	var descripcion = document.getElementById("descripcion");
		
	if(division.value!="0" && fecha.value!="" && tipoAsistencia.value!="0"){
		//Enviamos el formulario al servidor para que se procese la transaccion
		var formulario = document.getElementById("formAsistencia");
		formulario.submit();
		
		//Si habia algun campo marcado como incompleto lo ponemos a la normalidad		
		$("#campoDivision").removeClass("has-error");
		$("#campoFecha").removeClass("has-error");
		$("#campoTipoAsistencia").removeClass("has-error");
		
		//Le damos el foco al primer campo a completar
		$("#descripcion").focus();
	}else{
		alert("Por favor, ingrese todos los datos de la toma de  asistencia que desea modificar.");
		
		//Marcamos todos los campos imcompletos para que sea mas facil de visualizar.
		if(division.value == "0") $("#campoDivision").addClass("has-error"); else $("#campoDivision").removeClass("has-error");
		if(fecha.value == "") $("#campoFecha").addClass("has-error"); else $("#campoFecha").removeClass("has-error");
		if(tipoAsistencia.value == "0") $("#campoTipoAsistencia").addClass("has-error"); else $("#campoTipoAsistencia").removeClass("has-error");
	}
}